Selective input signal rejection and modification

ABSTRACT

This application is directed to modifying a sensed velocity at a device (e.g., a clickable trackpad) based on a time-dependent click memory variable (CMV). For example, if a touch having a certain velocity is detected when a selection (pick) button is pressed or released, the velocity can be initially suppressed under the presumption that the movement was inadvertent. However, over time that presumption fades, and the CMV can be used to gradually allow the full velocity of the touch to be recognized, under the new presumption that the movement was intentional.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/619,958 (now U.S. Pat. No. 9,632,608), filed on Feb. 11, 2015, whichis a continuation of U.S. patent application Ser. No. 13/868,787 (nowU.S. Pat. No. 8,970,533), filed Apr. 23, 2013, which is a continuationof U.S. patent application Ser. No. 13/251,013 (now U.S. Pat. No.8,445,793), filed Sep. 30, 2011, which is a continuation or U.S. patentapplication Ser. No. 12/242,794 (now U.S. Pat. No. 8,294,047), filedDec. 8, 2008, the entire disclosures of which are incorporated herein byreference for all purposes.

FIELD OF THE INVENTION

This relates generally to processing signals from user input devices,and more specifically to selectively rejecting certain types of signalsreceived from user input devices.

BACKGROUND OF THE INVENTION

Many types of input devices are presently available for performingoperations in a computing system, such as buttons or keys, mice,trackballs, joysticks, touch sensor panels, touch screens and the like.Touch panels, in particular, are becoming increasingly popular becauseof their ease and versatility of operation as well as their decliningprice. Touch screens can include a clear panel with a touch-sensitivesurface. A computer or another type of electronic device can processsignals generated by the touch panel to determine how and where a useris touching the touch panel.

A multi-touch panel is an advanced type of touch panel that allowsmultiple touch events to be sensed at the touch panel at the same time.A multi-touch panel allows for more complex user interaction, as itallows an electronic device to detect all areas of a panel that arebeing touched at any given time. Thus, an electronic device can obtainan “image” indicating the positions and shapes of all touches takingplace on a panel at any given time. Furthermore, a multi-touch panel ora device connected thereto can track the movement of one or more touchevents over time (e.g., one or more fingers being moved along thesurface of the panel). This may allow the tracking of more complex“touch gestures.”

Various types of multi-touch panels can be designed. One type providesfor sensing touch events based on sensing changes of capacitance causedby a finger or another object touching the panel. An exemplarymulti-touch panel of this type is discussed in U.S. application Ser. No.11/649,998, U.S. Pub. No. 20080158172 filed Jan. 3, 2007, the contentsof which are incorporated by reference herein in their entirety for allpurposes.

While touch sensing (whether single or multi-touch) is undoubtedlybeneficial; in certain situations touch sensing may gather too muchinformation. For example, the user may touch the panel or move his/herfingers along the panel unintentionally or at least without intending toconvey this action to the computer or device. If the device responds tounintentional actions by the user it may confuse the user ormisinterpret commands or other communications received from the user.

SUMMARY OF THE INVENTION

Embodiments of the invention are related to user input devices thataccept complex user input including a combination of touch and push (orpick) input. These devices provide much richer user input than manyexisting user input devices. However, this may result in some unintendedconsequences. Because the devices of the present invention can detectuser actions that were not detectable by previous devices, these devicesmay also detect certain user actions that were not intended by the userto be machine interface actions.

Therefore, embodiments of the invention provide for selective ignoringor rejection of input received from such devices in order to avoidinterpreting unintentional user actions as commands. Furthermore, someinput signals can be modified. The selective rejection or modificationcan be performed by the user interface device itself or by a computingdevice that includes or is attached to the user interface device. Theselective rejection or modification may be performed by a module thatprocesses input signals, performs the necessary rejections andmodifications and sends revised input signals to higher level modules.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an exemplary laptop trackpad according to oneembodiment of the invention.

FIG. 2 illustrates an exemplary computer mouse according to oneembodiment of the invention.

FIGS. 3A-C illustrate a plurality of exemplary touch panels and touchcombinations sensed thereon.

FIGS. 4A-C illustrates a plurality of exemplary touch panels and touchcombinations sensed thereon.

FIG. 5 illustrates exemplary switch state and clock memory variablegraphs according to one embodiment of the invention.

FIG. 6 illustrates an exemplary initial velocity to revised velocitygraph according to one embodiment of the invention.

FIG. 7 illustrates an exemplary block diagram of one embodiment of theinvention.

FIG. 8 is a simplified diagram of an exemplary touch pad and displayaccording to one embodiment of the invention.

FIG. 9 is a perspective view of an exemplary input device, in accordancewith one embodiment of the invention.

FIGS. 10A-D are simplified side views of an exemplary input devicehaving a button touch pad, in accordance with one embodiment of theinvention.

FIG. 11 is a simplified block diagram of an exemplary input deviceconnected to a computing device, in accordance with one embodiment ofthe invention.

FIG. 12 is a side view, in cross section, of an exemplary input device,in accordance with one embodiment of the invention.

FIG. 13 is another side view, in cross section, of the exemplary inputdevice of FIG. 12.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In the following description of preferred embodiments, reference is madeto the accompanying drawings which form a part hereof, and in which itis shown by way of illustration specific embodiments in which theinvention can be practiced. It is to be understood that otherembodiments can be used and structural changes can be made withoutdeparting from the scope of the embodiments of this invention.

This generally relates to devices that provide a surface which featuresa combination of touch sensing and mechanical pick sensing. Touchsensing refers to the sensing of a finger or another object merelytouching the surface, while mechanical pick sensing refers to thesurface registering a push that actually physically moves or deforms thesurface. The touch sensing can be multi or single touch sensing.Embodiments of the invention can detect certain combinations ofmechanical and touch sensing data that fit patterns that have been foundto often result from unintentional user input, and modify the data inorder to remove or reduce the effects of unintentional input.

Although embodiments of the invention may be described and illustratedherein in terms of laptop trackpads and computer mice, it should beunderstood that embodiments of this invention are not so limited, butare additionally applicable to any input devices that combine touchsensing and mechanical pick sensing. Furthermore, while embodiments maybe described and illustrated herein in the context of devices thatperform multi-touch sensing, certain embodiments may also includedevices that only perform single touch sensing.

FIG. 1 shows an exemplary user input device according to someembodiments of the invention. The device may include a top surface 101.The top surface can be a multi touch or single touch enabled surface.The top surface can be connected to a base 102 through a hinge 103.Although hinge 103 is shown in the example of FIG. 1 to be at theextreme ends of top surface 101 and base 102, in other embodiments thehinge may instead be located more towards the center of the top surfaceand base, creating a pivot point that can provide a “rocker switch”action. The hinge may be spring loaded, or another spring or similarmechanism may be used to resiliently separate the top surface from thebase.

The top surface can be resiliently movable in a downward direction. Aswitch 104 may be placed on the base and be activated when the topsurface is pressed down. The switch can be a microswitch or other devicecapable of being actuated. The hinge may ensure that the top surfacereverts to its original position after the user stops applying pressureand pushing the surface down.

A user may interact with the touch surface by merely touching it withoutnecessarily depressing it to activate the switch. The user can providemulti touch signals by touching different places of the surface byusing, for example, two or more fingers. The user can also inputgestures by moving one or more fingers along the surface. This type ofinput is referred to as touch input. In addition, the user may push thesurface down to activate the microswitch. This can be used as anothertype of user input which is referred to as a pick. Furthermore, the usermay combine the two types of inputs. For example, when the user pushesthe top surface down, he/she may do so while placing a specificconfiguration of fingers on the surface, perhaps at a particularlocation on the surface, and this specific configuration and locationmay have a specific meaning for the user interface. Also, the user mayimpart gestures on the top surface while it is pushed down and thesegestures may have a specific meaning within the user interface as well.This meaning may be the same as or different than the meaning resultingfrom performance of similar gestures while the top surface is not pusheddown.

Device 100 can be included as a user interface device in various otherdevices. For, example it can be included as a trackpad of a laptopcomputer 110. Furthermore, device 100 can be included in otherelectronic devices such as a trackpad for a stand alone keyboardconnected to a personal computer or the like, a standalone trackpad, atrackpad for a toy or a standalone game console, a trackpad for avending machine, ATM machine or another type of electronic kiosk, etc.

FIG. 2 shows another exemplary device that includes a combination oftouch and pick sensing. Device 200 can be a computer mouse, standalonetrackpad or other input device, or the like. It can include a topsurface 201 that can be a multi-touch surface. A base 202 can beattached to the top surface through one or more spring elements 203.Guides (not shown) can be used to hold the top surface in position overthe base. A switch 204 can be disposed on the base and can bedepressible by the top surface when the top surface is pushed down. Thedevice 200 can also include position tracking module 205 that tracks themovement of the device. The position tracking module 205 can beconventional, including for example a ball or a laser tracking system.

As with the trackpad discussed above, the user may be able to conveycommands or information to a device attached to device 200 by merelytouching the surface of the device (without depressing it), depressingthe surface to activate the switch 203 or a combination of both. Whenimparting multi-touch input, the user can create multi-touchcombinations by simultaneously touching different portions of the topsurface and/or create gestures by moving one or more fingers and/orother objects along the surface.

The mouse embodiment can be used in conjunction with various existingcomputer systems, such as computer system 210, or in any otherapplications where a computer mouse may be considered a useful userinput device.

Other types of input devices can combine multi-touch and pick types ofinterfaces by allowing the user to provide touch and pick input on thesame surface, as discussed above. Some of these devices can feature morethan one switch allowing for a greater variety in the pick input.

The above types of devices provide much richer user input than manyexisting user input devices. However, this may result in some unintendedconsequences. Because the devices of the present invention can detectuser actions that were not detectable by previous devices, these devicesmay also detect certain user actions that were not intended by the userto be machine interface actions. For example, a user may often resthis/her palms on a conventional laptop trackpad while typing, withoutexpecting this to result in any commands to the laptop. However, aversion of the trackpad 100 may be depressed as a result of the user'spalms and may register a pick.

Therefore, embodiments of the invention provide for selective ignoringor rejection of input received from devices 100 and 200 in order toavoid interpreting unintentional user actions as commands. Furthermore,some input signals can be modified. The selective rejection ormodification can be performed by the user interface device itself (e.g.,by mouse 200) or by a computing device that includes or is attached tothe user interface device (e.g., laptop 110 or computer 210). Theselective rejection or modification may be performed by a module thatprocesses input signals, performs the necessary rejections andmodifications and sends revised input signals to higher level modules.This is discussed in more detail below in connection with FIG. 7.

In some embodiments, pick inputs are rejected if certain types of touchinputs are present. This can be done because users may push the topsurface inadvertently, and often the way they push the top surface canindicate whether the pick was intentional or not.

FIGS. 3 and 4 show a plurality of touch panels and possible touchcombinations thereon. Thus, these figures show current states of thetouch panels. Touches are indicated by thatched areas in the figures.Embodiments of the invention can be configured to recognize certaintouch patterns by the way these patterns are usually caused. Forexample, a small circle or ellipse can be recognized as a finger or afingertip, a larger ellipse as a thumb, an even larger ellipse whoseminor radius is above a certain threshold (e.g., 11 mm) can berecognized as a palm. Recognition of fingers or other hand parts isdiscussed in more detail in U.S. Pat. No. 6,323,846 which is herebyincorporated by reference herein in its entirety for all purposes. Thissubject is also discussed in detail by U.S. patent application Ser. No.11/619,464 entitled “MULTI-TOUCH INPUT DISCRIMINATION,” filed on Jan. 3,2007 and having U.S. Publication No. 20080158145 and U.S. patentapplication Ser. No. 11/756,211 entitled “MULTI-TOUCH INPUTDISCRIMINATION,” filed on May 31, 2007 and having U.S. Publication No.20080158185. These two patent applications are hereby incorporated byreference herein in their entireties for all purposes.

Referring to FIGS. 3A-C, panel 300 of FIG. 3A shows a pattern that mayresult from the touching of three fingertips on the panel. If such atouch is sensed and a pick is sensed at the same time, embodiments ofthe invention can allow the pick to be recognized (i.e., not reject it).A pick can be allowed because this pattern usually indicates that theuser is intentionally trying to push the surface with his/her fingers. Apick can be allowed in other similar states where a different number offinger touches are present and/or the finger touches are arranged in adifferent manner. In some embodiments, a pick can be ignored if morethan a predefined number of fingers (e.g. 8) appear. A large number offingers may indicate that the user is resting her hands on the trackpad.

The pattern of panel 301 of FIG. 3B shows a portion of a thumb touch 303appearing in the bottom part of the panel. A pick event that takes placewhile this touch is appearing can be allowed as it also usuallyindicates an intentional pick. In fact, all touches that are recognizedas thumb touches or portions thereof and appear close to the edges ofthe panel can cause pick events that occur during those touches to beallowed. In some embodiments, all finger touches or portions thereofthat appear close to the edges of the panel, regardless of whether theyare recognized as thumbs, can cause simultaneous pick events to beallowed.

Panel 302 of FIG. 3C indicates two patterns (304 and 305) that may beidentified as palm touches. If a pick is registered when one or both ofthese patterns (or patterns similar thereto) appear in these or similarpositions (i.e., close to the sides of the panel and relatively parallelto the sides) the pick can be rejected or ignored. The pick rejection isbased on the fact that this pattern tends to indicate that the user issimply resting her hands on the trackpad and does not intend to cause apick. A pick can be similarly rejected if only portions of patterns 304and 305 appear at the sides of the panel, as long as these portions arerecognizable as such.

Panel 400 of FIG. 4A shows a palm pattern 401 and a portion of a thumbpattern 402. The pattern of panel 400 can also cause any concurrentlysensed pick to be rejected, as it can indicate the user resting her handon the trackpad. The pattern of panel 400 can cause a pick to berejected even if pattern 402 is not recognized as thumb touch. Ingeneral if a palm touch (such as pattern 401), or portion thereof incombination with any finger touch on the top portion of the panel isdetected, a contemporaneously detected pick can be ignored. The topportion of the panel can be defined, for example, as the top fifth ofthe panel (defined by line 403 in FIG. 4A). A mirror image of panel 400can also result in rejecting a pick.

Panel 404 of FIG. 4B shows a finger touch 406 in combination with a palmtouch 405 that is close to the side. In pattern 404, the finger touch isnot in the upper portion of the panel. This pattern can result inallowing a pick to register, as the finger touch 406 may indicate anintentional push. A pick can also be allowed if palm touch 405 is apartial palm touch. A pattern that mirrors pattern 404 can also resultin allowance of a pick.

In some embodiments, if a palm touch such as palm touch 305 appears andcauses a detected pick to be ignored, and subsequently a finger such asfinger touch 406 appears while the multi-touch surface is still pusheddown, then the pick may continue to be ignored. Furthermore, if a fingertouch, such as pattern 402 appears initially and causes a detected pickto be registered, and then a palm touch, such as palm touch 401 appearswhile the multi-touch surface is pressed down, the pick can continue tobe registered. More broadly, in some embodiments, if a pick takes placeduring a pattern that results in a determination whether to register orignore the pick, and subsequently the pattern changes while the pick isstill taking place, the initial determination may still control, even ifthe later pattern would result in a different determination.

Some embodiments may allow users to enter touch gestures by moving oneor more fingers along the panel. In some embodiments, if a predefinedmulti-touch gesture is detected to be in progress and a pick is detectedwhile the multi touch gesture is in progress, the pick can be ignored.This may be done because a user may have inadvertently pressed on thepanel while trying to perform the gesture.

Other embodiments may allow gestures and picks to be detectedsimultaneously and may, in certain instances, provide for a differentbehavior in such events. For example, some embodiments may allow a userto move an object around the desktop by performing a pick to “pick upthe object” and while the pick is being performed (i.e., the panel isbeing pushed down), performing a gesture to move the object.

When processing gestures, the concept of a lowest path may be defined.In some embodiments the lowest path may be chosen simply as the touchthat is the lowest on the panel (i.e., it has the lowest y coordinate).In other embodiments, the lowest path may be chosen as a touch that isboth relatively low and relatively stationary. In one example of thelatter embodiments, the lowest path may be chosen based on the heightand the movement rate of each touch. If there are a plurality of toucheson a panel at a given time, the following parameters can be measured foreach touch: the height y of the touch and the distance d, the touch hasmoved during a predefined period of time. (The predefined period of timecan be a relatively short period, such as 0.1 s). The lowest path may bethe touch for which (d+y) is minimal. In other embodiments, theexpression (ad+by) can be used, where a and b are predefined constants.The lowest path is usually a thumb, but can be another finger or object.

In some embodiments, touch events can be ignored as well. One suchexample is shown in panel 407 of FIG. 4C. In embodiments illustrated bythat panel, a thumb resting zone can be defined in the lower portion ofthe panel below line 408. The thumb resting zone can be, for example, 1cm thick. If a lowest path (such as, e.g., lowest path 409) appears inthe thumb resting zone, any picks that are received may be registered,but the touch input of the lowest path can be rejected or ignored. Thismay happen because the user may be touching the panel only to rest herfinger or perform a pick and does not intend to perform any touch input.Ignoring touches in various resting zones is discussed in more detail inU.S. patent application Ser. No. 12/242,772 (now US Publication No.2009-0174679 A1) entitled “SELECTIVE REJECTION OF TOUCH CONTACTS IN ANEDGE REGION OF A TOUCH SURFACE”, filed concurrently herewith, which ishereby incorporated by reference herein in its entirety for allpurposes. If the lowest path is moved and leaves the thumb resting zone,its touch input can be allowed. However, if there is another fingertouch detected on the panel (such as finger touch 410) and that otherfinger touch moves more than a predefined distance (e.g., 1 cm) from thetime the finger touch 410 appears to the time the lowest path 409 leavesthe thumb resting zone, the lowest path 409 can be permanently ignored(i.e., ignored until the user lifts her finger), regardless of where itmoves. This can be done because the user may be concentrating onperforming a gesture with her finger (i.e., touch 410) andunintentionally let her thumb (i.e., lowest path 409) drift up out ofthe resting zone.

In some embodiments, if a lowest path has been moving for at least apredefined period of time before another finger touches, the lowest pathis ignored after the touch of the other finger. The predefined time canbe, for example, ¼ of a second.

In some embodiments, if there is a pick detected when there is more thanone finger touch presently detected, then the lowest path is selectedfrom the present touches and the lowest path is ignored while the pickis ongoing (i.e., while the user is pushing the panel down). It shouldbe noted that in these embodiments if there is only one touch beingdetected when a pick is detected, this touch is not ignored.

If the lowest path is rejected under the above scenario, a memory flagcan be set so that the lowest path continues being rejected until itcompletely lifts off the surface or all other touches lift off thesurface leaving the lowest path as the only remaining touch or the pickis released and the lowest path is not identified as a thumb path.

A path or a touch can be identified as a thumb path, by examininggeometric qualities of the touch pattern and determining whether thepattern is likely to have resulted from a thumb touch. For example, athumb touch can be larger and more elliptical than an ordinary fingertouch. In the above discussed scenario, if the lowest path is identifiedas a thumb path and is not alone, it will continue to be rejected afterthe pick has been released. The lowest path behavior discussed above canbe distinct from and need not depend upon the thumb resting zonebehavior discussed in connection with FIG. 4C above.

It is recognized that, in some situations, the user's fingers mayunintentionally slide on the surface of the panel when the user pushesthe panel down (i.e., performs a pick) and when the user allows thepanel to revert to its original state. This can be especially true forcurved panels such as the panel for the mouse of FIG. 2, but may alsotake place for flat panels, such as the one shown in FIG. 1.

Graph 500 of FIG. 5 shows the state of a switch of the mechanical switchduring the performance of a pick. Switch state 0 may indicate that thetop surface has not been pushed down against the switch. Switch state 1may indicate that the top surface is being pushed down, or that a pickis being performed. At time 501, the user pushes down the tops surfacecausing the state to change from 0 to 1. The user keeps the top surfacepressed down until point 502. At point 502, the user releases the topsurface causing it to revert to its original position or to change backto 0.

The user may but need not remove her fingers from the top surface whenreleasing it. She can release it by merely removing pressure from thesurface but keeping her fingers touching the surface. The user may wishto release the surface without removing her fingers therefrom in orderto perform or continue performing a desired touch input or gesture.However, as noted above, the user may unintentionally move her fingersalong the multi-touch panel when initially pressing down and whenreleasing the top surface. This may happen as a result of the change ofpressure between the user's fingers and the surface. This may interferewith the touch input or gesture the user is trying to perform.Furthermore, if the user is already moving her fingers along the surfaceof the touch panel, the act of pushing or releasing the touch panel canresult in an unintentional change of the speed of movement. Thereforeembodiments of the invention provide for removing the effects of thisunintentional finger movement by modifying detected touch inputs.

This modification can be performed based on an internal variablereferred to as the click memory variable, or CMV. Graph 503 of FIG. 5shows the state of the CMV according some embodiments over a period oftime. The click memory variable can have values between 1 and 0. It canbe reset to 1 every time a change of the switch state takes place. This,the CMV can be set to 1 at points 501 and 502. Once at a non-zero value,the CMV can exponentially decay over time until it reaches 0. This canbe accomplished, for example, by performing the following calculationperiodically:CMV_(NEW)=0.9·CMV_(OLD)  EQ1

In different embodiments the coefficient (0.9) and the period ofcalculation may vary. Due to the rounding inherent in electroniccalculations, EQ1 will result in the CMV decaying to 0 some time after achange of the switch state unless a new change of the switch stateresets the CMV back to 1.

Each touch pattern that forms a separate geometrical object can beconsidered a touch object. Thus, for example, referring to panel 300,finger touch patterns 306-308 can be considered separate touch objects.Palm touch patterns 304 and 305 of panel 302 can also be consideredseparate touch objects. The velocity of each touch object on the panelcan be calculated. In some embodiments, this velocity calculation needonly be done when the value of CMV is other than 0. The velocity of thetouch objects can then be changed according to the following formula:

${{EQ}\; 2\mspace{14mu} V_{R}} = \left\{ \begin{matrix}{V_{IN} - {K \cdot {CMV}}} & {V_{IN} > {K \cdot {CMV}}} \\0 & {{{- K} \cdot {CMV}} \leq V_{IN} \leq {K \cdot {CMV}}} \\{V_{IN} + {K \cdot {CMV}}} & {V_{IN} < {{- K} \cdot {CMV}}}\end{matrix} \right.$

where V_(IN) is the initial or sensed velocity, V_(R) is the resultingor modified velocity and K is a predefined constant. A suitable constantK may be chosen by experimentation.

The result of equation 0 is shown in FIG. 6. FIG. 6 is a graph of therevised velocity as related to the initial velocity for a predefinedvalue of CMV. As can be seen, the revised velocity is generallyproportional to the initial velocity except for a dead-zone range 601,defined by K·CMV. Thus, the velocity modification is similar todead-zone filtering. The dead-zone represents a velocity range for whichthe initial sensed velocity of various touch objects is likely to beentirely due to the unintentional consequences of a user pushing orreleasing the top surface.

Thus, embodiments of the present invention provide that slower touchobjects may be stopped (i.e., their velocity may be made equal to 0),while the velocity of faster touch objects may be reduced based on thevalue of CMV.

The graph of FIG. 6 may indicate the relationship of velocities only atsingle moment in time. As time passes, the value of CMV may change andthe relationship of FIG. 6 may change. More specifically, provided thereis no new panel push or release event, the value of CMV may decay, whichmay result in a decrease of the dead-zone. Thus, the modification oftouch object velocities decreases as the value of CMV decreases or astime passes from the last push or release event. Eventually, CMV may goto 0, at which point no modification of velocities is performed. Thismay reflect the fact that any unintentional effects of pushing orreleasing the top surface decrease over time and eventually disappear.

In some embodiments, the calculation of Equation 2 can be performed forvertical and horizontal (x and y) components of the velocities of eachobject. Thus, V_(R,x) and V_(R,y) can be calculated based on V_(IN,x)and V_(IN,y), respectively. In some embodiments, modified velocities ofthe touch objects can be sent to higher level modules. Alternatively, orin addition, the modified velocities can be used to determine modifiedpositions of the various touch objects at later times and these modifiedpositions can be sent to the higher level modules.

The above speed modification can be performed for the input device ofFIG. 2 and/or similar devices as it is especially useful for inputdevices featuring non-flat top surfaces. However, it can also beperformed for devices featuring flat top surfaces, such as laptoptrackpads, etc.

The various input signal rejection and modification strategies discussedabove can be combined where not mutually exclusive. Thus, any device canfeature a combination one or more of the strategies discussed above.

FIG. 7 is a block diagram showing a modular representation ofembodiments of the present invention. FIG. 7 can describe variousembodiments, such as the laptop of FIG. 1, the computer of FIG. 2, etc.Block 700 represents the user input device. This can be the combinationtouch (or multi-touch) and mechanical pick input device discussed above.The user input device may be the trackpad of FIG. 1, the mouse of FIG. 2or another device that combines touch sensing and mechanical picksensing. Block 701 is a rejection and modification module. This modulemay take in user input data from the user input device, modify it and/orreject various sets of data as discussed above, and send the modifieddata to higher level modules 702-705.

The rejection and modification module may be implemented in applicationspecific hardware. Alternatively, it may be implemented as softwarerunning on a programmable processor. In the latter alternative, therejection and modification module may include a processor, a memory andsoftware stored in the memory that is read and executed by theprocessor. The rejection and modification module need not be directlyconnected to the user input device. There may instead be one or moreintervening modules between blocks 700 and 701. These may includemodules for digitization, normalization and/or compression of the inputdata of the input device, modules that perform other types of errorcorrection of the input data, or modules that process the input data inother respects, such as segmentation modules that organize raw pixelbased input touch data into distinct touch objects that define specificregions that have been touched. Since rejections can be considered to betypes of modifications, the rejection and modification module can alsobe referred to as a modification module.

The modified input data created by the rejection and modification modulecan be used by higher level modules. For example, higher level modulesmay perform further processing and modification of the input data.Alternatively, higher level modules may actually use the input data toperform user interactions. Thus, some higher level modules can beapplications, such as web browsers, email clients, etc. The higher levelmodules may also be implemented as software running on a programmableprocessor or as application specific hardware. When implemented assoftware, the higher level modules may include software that is storedat the same memory as that of the rejection and modification module, orsoftware that is separately stored. Furthermore, the higher levelmodules may be executed at the same or a different processor than therejection and modification module. The device discussed above, whetherit be a laptop computer, a desktop computer, or another type device, canfeature better and more intuitive user interaction by providing a richuser input interface without requiring users to concentrate onpreventing unintentional user input.

While some embodiments discussed above are discussed mostly withreference to rectangular panels, such embodiments may also be used inthe context of non-rectangular or curved panels. Embodiments havingcurved panels may still feature “flat” or two dimensional representationof the touch data sensed on the panels, and may therefore be related tothe panels discussed in FIGS. 3 and 4.

Various user input devices that could be used in accordance withembodiments of the present invention were discussed above in connectionwith FIGS. 1 and 2. The text below and FIGS. 8-13 provide additional,more detailed description of some of these types of user input devices.The invention is not limited to the user input devices discussed below.

Referring to FIG. 8, a touch-sensitive track pad 10 will be described ingreater detail. The track pad is generally a small (often rectangular)area that includes a protective/cosmetic shield 12 and a plurality ofelectrodes 14 disposed underneath the protective shield 12. Electrodes14 may be located on a circuit board, for example a printed circuitboard (PCB). For ease of discussion, a portion of the protective shield12 has been removed to show the electrodes 14. Different electrodes 14or combinations thereof can represent different x, y positions. In oneconfiguration, as a finger 16 (or alternately a stylus, not shown)approaches the electrode grid 14, the finger may form a capacitance withone or more electrodes proximate to the finger or may change existingcapacitances between one or more such electrodes. The circuitboard/sensing electronics (not shown) measures such capacitance changesand produces an input signal 18 which is sent to a host device 20 (e.g.,a computing device) having a display screen 22. The input signal 18 isused to control the movement of a cursor 24 on a display screen 22. Asshown, the input pointer moves in a similar x, y direction as thedetected x, y finger motion. FIG. 9 is a simplified perspective view ofan input device 30, in accordance with one embodiment of the presentinvention. The input device 30 is generally configured to sendinformation or data to an electronic device (not shown) in order toperform an action on a display screen (e.g., via a graphical userinterface (GUI)). For example, moving an input pointer, making aselection, providing instructions, etc. The input device may interactwith the electronic device through a wired (e.g., cable/connector) orwireless connection (e.g., IR, bluetooth, etc.).

The input device 30 may be a stand alone unit or it may be integratedinto the electronic device. When in a stand alone unit, the input devicetypically has its own enclosure. When integrated with an electronicdevice, the input device typically uses the enclosure of the electronicdevice. In either case, the input device may be structurally coupled tothe enclosure as for example through screws, snaps, retainers, adhesivesand the like. In some cases, the input device may be removably coupledto the electronic device as for example through a docking station. Theelectronic device to which the input device is coupled may correspond toany consumer related electronic product. By way of example, theelectronic device may correspond to a computer such as a desktopcomputer, laptop computer or PDA, a media player such as a music player,a communication device such as a cellular phone, another input devicesuch as a keyboard, and the like.

As shown in FIG. 9, the input device 30 includes a frame 32 (or supportstructure) and a track pad 34. The frame 32 provides a structure forsupporting the components of the input device. The frame 32 in the formof a housing may also enclose or contain the components of the inputdevice. The components, which include the track pad 34, may correspondto electrical, optical and/or mechanical components for operating theinput device 30.

Track pad 34 provides an intuitive interface configured to provide oneor more control functions for controlling various applicationsassociated with the electronic device to which it is attached. By way ofexample, the touch initiated control function may be used to move anobject or perform an action on the display screen or to make selectionsor issue commands associated with operating the electronic device. Inorder to implement the touch initiated control function, the track pad34 may be arranged to receive input from a finger (or object) movingacross the surface of the track pad 34 (e.g., linearly, radially,angular, etc.), from a finger holding a particular position on the trackpad 34 and/or by a finger tapping on a particular position of the trackpad 34. As should be appreciated, the touch pad 34 provides easyone-handed operation, i.e., lets a user interact with the electronicdevice with one or more fingers.

The track pad 34 may be widely varied. For example, the touch pad 34 maybe a conventional track pad based on the Cartesian coordinate system, orthe track pad 34 may be a touch pad based on a polar coordinate system.An example of a touch pad based on polar coordinates may be found inU.S. Pat. No. 7,046,230 to Zadesky et al., entitled “TOUCH PAD FORHANDHELD DEVICE”, filed Jul. 1, 2002, which is hereby incorporated byreference herein in its entirety for all purposes.

The track pad 34 may be used in a relative or absolute mode. In absolutemode, the track pad 34 reports the absolute coordinates of where it isbeing touched. For example x, y in the case of the Cartesian coordinatesystem or (r, θ) in the case of the polar coordinate system. In relativemode, the track pad 34 reports the direction and/or distance of change.For example, left/right, up/down, and the like. In most cases, thesignals produced by the track pad 34 direct motion on the display screenin a direction similar to the direction of the finger as it is movedacross the surface of the track pad 34.

The shape of the track pad 34 may be widely varied. For example, thetrack pad 34 may be circular, oval, square, rectangular, triangular, andthe like. In general, the outer perimeter of the track pad 34 definesthe working boundary of the track pad 34. In the illustrated embodiment,the track pad is rectangular. Rectangular track pads are common onlaptop computers. Circular track pads allow a user to continuously swirla finger in a free manner, i.e., the finger can be rotated through 360degrees of rotation without stopping. Furthermore, the user can rotatehis or her finger tangentially from all sides thus giving it more rangeof finger positions. Both of these features may help when performing ascrolling function, making circular track pads advantageous for use withportable media players (e.g., iPod media players produced by Apple Inc.of Cupertino, Calif.). Furthermore, the size of the track pad 34generally corresponds to a size that allows them to be easilymanipulated by a user (e.g., the size of a finger tip or larger).

The track pad 34, which generally takes the form of a rigid planarplatform, includes a touchable outer track surface 36 for receiving afinger (or object) for manipulation of the track pad. Although not shownin FIG. 9, beneath the touchable outer track surface 36 is a sensorarrangement that is sensitive to such things as the pressure and/ormotion of a finger thereon. The sensor arrangement typically includes aplurality of sensors that are configured to activate as the finger sitson, taps on or passes over them. In the simplest case, an electricalsignal is produced each time the finger is positioned over a sensor. Thenumber of signals in a given time frame may indicate location,direction, speed, and acceleration of the finger on the track pad 34,i.e., the more signals, the more the user moved his finger. In mostcases, the signals are monitored by an electronic interface thatconverts the number, combination and frequency of the signals intolocation, direction, speed and acceleration information. Thisinformation may then be used by the electronic device to perform thedesired control function on the display screen. The sensor arrangementmay be widely varied. By way of example, the sensors may be based onresistive sensing, surface acoustic wave sensing, pressure sensing(e.g., strain gauge), infra red sensing, optical sensing, dispersivesignal technology, acoustic pulse recognition, capacitive sensing andthe like.

In the illustrated embodiment, the track pad 34 is based on capacitivesensing. As is generally well known, a capacitance-based track pad isarranged to detect changes in capacitance as the user moves an objectsuch as a finger around the track pad. In most cases, the capacitivetrack pad includes a protective shield, one or more electrode layers, acircuit board and associated electronics including an applicationspecific integrated circuit (ASIC). The protective shield is placed overthe electrodes; the electrodes are mounted on the top surface of thecircuit board; and the ASIC is mounted on the bottom surface of thecircuit board. The protective shield serves to protect the underlayersand to provide a surface for allowing a finger to slide thereon. Thesurface is generally smooth so that the finger does not stick to it whenmoved. The protective shield also provides an insulating layer betweenthe finger and the electrode layers. The electrode layer includes aplurality of spatially distinct electrodes. Any suitable number ofelectrodes may be used. In most cases, it would be desirable to increasethe number of electrodes so as to provide higher resolution, i.e., moreinformation can be used for things such as acceleration.

Capacitive sensing works according to the principals of capacitance. Asshould be appreciated, whenever two electrically conductive members comeclose to one another without actually touching, their electric fieldsinteract to form capacitance. In the configuration discussed above, thefirst electrically conductive member is one or more of the electrodesand the second electrically conductive member is, for example, thefinger of the user. Accordingly, as the finger approaches the touch pad,a tiny capacitance forms between the finger and the electrodes in closeproximity to the finger. The capacitance in each of the electrodes ismeasured by an ASIC located on the backside of the circuit board. Bydetecting changes in capacitance at each of the electrodes, the ASIC candetermine the location, direction, speed and acceleration of the fingeras it is moved across the touch pad. The ASIC can also report thisinformation in a form that can be used by the electronic device.

In accordance with one embodiment, track pad 34 is movable relative toframe 32 so as to initiate another set of signals (other than justtracking signals). By way of example, track pad 34 in the form of therigid planar platform may rotate, pivot, slide, translate, flex and/orthe like relative to frame 32. Track pad 34 may be coupled to frame 32and/or it may be movably restrained by frame 32. By way of example,track pad 34 may be coupled to frame 32 through screws, axels, pinjoints, slider joints, ball and socket joints, flexure joints, magnets,cushions and/or the like. Track pad 34 may also float within a space ofthe frame (e.g., gimbal). It should be noted that the input device 30may additionally include a combination of joints such as apivot/translating joint, pivot/flexure joint, pivot/ball and socketjoint, translating/flexure joint, and the like to increase the range ofmotion (e.g., increase the degree of freedom). When moved, touch pad 34is configured to actuate a circuit that generates one or more signals.The circuit generally includes one or more movement indicators such asswitches, sensors, encoders, and the like. An example of a gimbaledtrack pad may be found in patent application Ser. No. 10/643,256,entitled, “MOVABLE TOUCH PAD WITH ADDED FUNCTIONALITY,” filed Aug. 18,2003, now U.S. Pat. No. 7,499,040, which is hereby incorporated byreference herein in its entirety for all purposes.

In the illustrated embodiment, track pad 34 takes the form of adepressible button that performs a “picking” action. That is, a portionof the entire track pad 34 acts like a single or multiple button suchthat one or more additional button functions may be implemented bypressing on track pad 34 rather than tapping on the track pad or using aseparate button/separate zone. As shown in FIGS. 10A and 10B, accordingto one embodiment of the invention, track pad 34 is capable of movingbetween an upright (or neutral) position (FIG. 10A) and a depressed (oractivate) position (FIG. 10B) when a force from a finger 38, palm, hand,or other object is applied to the track pad 34. The force should not beso small as to allow for accidental activation of the button signal, butnot so large as to cause user discomfort by requiring undue pressure.Track pad 34 is typically biased in the upright position as for examplethrough a flexure hinge, a spring member, or magnets. Track pad 34 movesto the activate position when the bias is overcome by an object pressingon track pad 34. As shown in FIG. 10C, the track pad 34 may be pivotedat one end such that the activate position is slightly inclined withrespect to the neutral position. When the finger (or other object) isremoved from track pad 34, the biasing member urges it back towards theneutral position. A shim or other structure (not shown) may preventtrack pad 34 from overshooting the neutral position as it returns. Forexample, a portion of frame 32 may extend outwardly above a portion oftrack pad 34 so as to stop track pad 34 at the neutral position. In thisway, the track surface can be kept flush with frame 32 if desired. Forexample, in laptop computers or handheld media devices, it may bedesirable to have the track pad flush with the housing of the computeror device.

As shown in FIG. 10A, in the upright/neutral position, track pad 34generates tracking signals when an object such as a user's finger ismoved over the top surface of the touch pad in the x,y plane. AlthoughFIG. 10A depicts the neutral position as being upright, the neutralposition may be situated at any orientation. As shown in FIG. 10B, inthe depressed position (z direction), track pad 34 generates one or morebutton signals. The button signals may be used for variousfunctionalities including but not limited to making selections orissuing commands associated with operating an electronic device. By wayof example, in the case of a music player, the button functions may beassociated with opening a menu, playing a song, fast forwarding a song,seeking through a menu and the like. In the case of a laptop computer,the button functions can be associated with opening a menu, selectingtext, selecting an icon, and the like. As shown in FIG. 10D, inputdevice 30 may be arranged to provide both the tracking signals and thebutton signal at the same time, i.e., simultaneously depressing thetouch pad 34 in the z direction while moving tangentially along thetrack surface (i.e., in the x, y directions). In other cases, inputdevice 30 may be arranged to only provide a button signal when touch pad34 is depressed and a tracking signal when the touch pad 34 is upright.

To elaborate, track pad 34 is configured to actuate one or more movementindicators, which are capable of generating the button signal when trackpad 34 is moved to the activate position. The movement indicators aretypically located within frame 32 and may be coupled to track pad 34and/or frame 32. The movement indicators may be any combination ofswitches and sensors. Switches are generally configured to providepulsed or binary data such as activate (on) or deactivate (off). By wayof example, an underside portion of track pad 34 may be configured tocontact or engage (and thus activate) a switch when the user presses ontrack pad 34. The sensors, on the other hand, are generally configuredto provide continuous or analog data. By way of example, the sensor maybe configured to measure the position or the amount of tilt of touch pad34 relative to the frame when a user presses on the track pad 34. Anysuitable mechanical, electrical and/or optical switch or sensor may beused. For example, tact switches, force sensitive resistors, pressuresensors, proximity sensors and the like may be used.

Track pads 10 and 30 shown in FIGS. 8-10 may, in some embodiments, bemulti-touch trackpads. Multi-touch consists of a touch surface (screen,table, wall, etc.) or touchpad, as well as software that recognizesmultiple simultaneous touch points, as opposed to the standardtouchscreen (e.g., computer touchpad, ATM), which recognizes only onetouch point. This effect is achieved through a variety of means,including but not limited to: capacitive sensing, resistive sensing,surface acoustic wave sensing, heat, finger pressure, high capture ratecameras, infrared light, optic capture, tuned electromagnetic induction,and shadow capture. An example of a multi-touch mobile phone is theiPhone produced by Apple Inc. of Cupertino, Calif. An example of amulti-touch media device is the iPod Touch produced by Apple Inc.Examples of laptop computers having multi-touch track pads are theMacBook Air and MacBook Pro produced by Apple Inc. All of the inputdevices described herein may employ multi-touch technology in someembodiments; alternatively the input devices described herein may employsingle touch track pads.

FIG. 11 is a simplified block diagram of a computing system 39, inaccordance with one embodiment of the present invention. The computingsystem generally includes an input device 40 operatively connected to acomputing device 42. By way of example, the input device 40 maygenerally correspond to the input device 30 shown in FIGS. 9 and 10, andthe computing device 42 may correspond to a laptop computer, desktopcomputer, PDA, media player, mobile phone, smart phone, video game orthe like. As shown, input device 40 includes a depressible track pad 44and one or more movement indicators 46. Track pad 44 is configured togenerate tracking signals and movement indicator 46 is configured togenerate a button signal when the track pad 44 is depressed. Althoughtrack pad 44 may be widely varied, in this embodiment, track pad 44includes capacitance sensors 48 and a control system 50 for acquiringthe position signals from sensors 48 and supplying the signals tocomputing device 42. Control system 50 may include an applicationspecific integrated circuit (ASIC) that is configured to monitor thesignals from sensors 48, to compute the location (Cartesian or angular),direction, speed and acceleration of the monitored signals and to reportthis information to a processor of computing device 42. Movementindicator 46 may also be widely varied. In this embodiment, however,movement indicator 46 takes the form of a switch that generates a buttonsignal when track pad 44 is depressed. Switch 46 may correspond to amechanical, electrical or optical style switch. In one particularimplementation, switch 46 is a mechanical style switch that includes aprotruding actuator 52 that may be pushed by track pad 44 to generatethe button signal. By way of example, the switch may be a tact switch ortactile dome.

Both track pad 44 and switch 46 are operatively coupled to computingdevice 42 through a communication interface 54. The communicationinterface provides a connection point for direct or indirect connectionbetween the input device and the electronic device. Communicationinterface 54 may be wired (wires, cables, connectors) or wireless (e.g.,transmitter/receiver).

Computing device 42 generally includes a processor 55 (e.g., CPU ormicroprocessor) configured to execute instructions and to carry outoperations associated with the computing device 42. For example, usinginstructions retrieved for example from memory, the processor maycontrol the reception and manipulation of input and output data betweencomponents of the computing device 42. In most cases, processor 55executes instruction under the control of an operating system or othersoftware. Processor 55 can be a single-chip processor or can beimplemented with multiple components.

Computing device 42 also includes an input/output (I/O) controller 56that is operatively coupled to processor 55. I/O controller 56 may beintegrated with processor 55 or it may be a separate component, asshown. I/O controller 56 is generally configured to control interactionswith one or more I/O devices that can be coupled to computing device 42,for example, input device 40. I/O controller 56 generally operates byexchanging data between computing device 42 and I/O devices that desireto communicate with computing device 42.

Computing device 42 also includes a display controller 58 that isoperatively coupled to processor 55. Display controller 58 may beintegrated with processor 55 or it may be a separate component, asshown. Display controller 58 is configured to process display commandsto produce text and graphics on a display screen 60. By way of example,display screen 60 may be a monochrome display, color graphics adapter(CGA) display, enhanced graphics adapter (EGA) display,variable-graphics-array (VGA) display, super VGA display, liquid crystaldisplay (LCD) (e.g., active matrix, passive matrix and the like),cathode ray tube (CRT), plasma displays, backlit light-emitting diode(LED) LCD displays, or the like.

In one embodiment (not shown), track pad 44 can comprise a glass surfacefunctioning not only as a touch-sensitive surface, but also as a displayscreen; in this case display screen 60 shown in FIG. 11 would beintegrated with the glass surface of the track pad 44. This could beuseful in computing devices (e.g., media players or mobile phones)having touch sensitive displays. An example of a media player having atouch sensitive display is the iPod Touch produced by Apple Inc. ofCupertino Calif. An example of a mobile phone having a touch sensitivedisplay is the iPhone produced by Apple Inc. of Cupertino Calif.

In most cases, processor 55 together with an operating system operatesto execute computer code and produce and use data. The computer code anddata may reside within a program storage area 62 that is operativelycoupled to processor 55. Program storage area 62 generally provides aplace to hold data that is being used by computing device 42. By way ofexample, the program storage area may include Read-Only Memory (ROM),Random-Access Memory (RAM), hard disk drive and/or the like. Thecomputer code and data could also reside on a removable program mediumand loaded or installed onto the computing device when needed. In oneembodiment, program storage area 62 is configured to store informationfor controlling how the tracking and button signals generated by inputdevice 40 are used by computing device 42.

FIG. 12 shows one embodiment of an input device, generally shown at 70,comprising a track pad 72 connected to a frame 76. Frame 76 may be ahousing for a stand alone input device, or it may be a casing foranother device which incorporates track pad 72, for example a laptopcomputer, desktop computer, hand held media device, PDA, mobile phone,smart phone, etc. Track pad 72 includes various layers including anouter touch-sensitive track surface 74 for tracking finger movements.Track surface 74 may also provide a low friction cosmetic surface. Inone embodiment, track pad 72 is based on capacitive sensing; therefore,it includes an electrode layer 80, which, for example, may beimplemented on a PCB. In the case of capacitive sensing, track surface74 is a dielectric material. A stiffener 84 is located below electrodelayer 80. Stiffener 84 is shown in FIG. 12 and FIG. 13, but in someembodiments may be omitted. Stiffener 84 may be used to compensate forthe inherent flexibility of electrode layer 80. Electrode layer 80responds to finger movements along to track surface 74 by sendingsignals to sensor 82. In the case of capacitive sensing, electrode layer80 registers changes in capacitance based on finger movements and sensor82 is a capacitive sensor. In this way, track pad 72 incorporates atouch sensor arrangement. Sensor 82 is shown disposed on the bottom ofelectrode layer 80, but it may be located elsewhere in otherembodiments. If, as in the illustrated embodiment, sensor 82 is locatedon a movable part of track pad 72, the input device may incorporate aflexible electrical connection (not shown) capable of moving with thesystem.

A movement indicator 78 is disposed on the bottom of track pad 72.Movement indicator 78 may be widely varied, however, in this embodimentit takes the form of a mechanical switch, which is typically disposedbetween the track pad 72 and the frame 76. In other embodiments,movement indicator 78 may be a sensor, for example an electrical sensor.Movement indicator 78 may be attached to frame 76 or to track pad 72. Inthe illustrated embodiment, movement indicator 78 is attached to thebottom side of electrode layer 80. By way of example, if electrode layer80 is located on a PCB, movement indicator 78 may be located on thebottom of the PCB. In another example, movement indicator 78 may tackthe form of a tact switches and more particularly, may be an SMT domeswitches (dome switch packaged for SMT).

Track pad 72 is shown in its neutral position in FIG. 12, where movementsensor 78 is not in contact with frame 76. When a user applies adownward pressure to track surface 74, track pad 72 may move downwardcausing movement sensor 78 to register this change in position. In theillustrated embodiment, movement sensor 78 (a tact switch) would contacteither frame 76, or in this case set screw 88. Set screw 88 may bemanually adjusted to alter the distance between the neutral and activatepositions. In one embodiment (not shown), set screw 88 may directly abutmovement sensor 78 in the neutral position, such that there is no slackor pre-travel in the system. A flexure hinge 86 connects track pad 72with frame 76. Flexure hinge 86 is a resilient material that flexes whena force is applied, but exerts a restoring force so as to urge track pad72 back towards the neutral position. In one embodiment, flexure hinge86 may be thin spring steel.

As shown in FIG. 13, flexure hinge 86 will flex when a user pushes downon track surface 74. Flexure 86 also urges track pad 72 towards itsneutral position, which in the illustrated embodiment shown in FIG. 12is horizontal. In this way, a user can press down virtually anywhere ontrack surface 74 and cause a “pick,” meaning that movement indicator 78will register this depression. This is in contrast to prior track padswhich incorporate separate track zones and pick zones. Being able topick anywhere on track surface 74 will provide the user with a moreintuitive and pleasurable interface. For example, a user may be able togenerate tracking and button signals with a single finger without everhaving to remove the finger from track surface 74. In contrast, a useroperating a track pad with separate track and pick zones may, forexample, use a right hand for tracking and a left hand for picking, or aforefinger for tracking and thumb picking.

A shoulder 90, which may be an extension of frame 76 or a discreetmember, blocks track pad 72 from traveling past its neutral position bycontacting a part of track pad 72, for example stiffener 84. In thisway, track surface 74 may be kept substantially flush with a top surfaceof frame 76. There may be a shock absorber or upstop (not shown)incorporated in conjunction with shoulder 90 to cushion contacts betweentrack pad 72 and shoulder 90.

As should be appreciated, the pick generated by pressing on tracksurface 74 may include selecting an item on the screen, opening a fileor document, executing instructions, starting a program, viewing a menu,and/or the like. The button functions may also include functions thatmake it easier to navigate through the electronic system, as forexample, zoom, scroll, open different menus, home the input pointer,perform keyboard related actions such as enter, delete, insert, pageup/down, and the like.

Flexure hinge 86 allows for a movable track pad in the minimum verticalspace possible. Minimum vertical space is achieved because flexure hinge86 is thin and is generally situated parallel to a bottom layer of trackpad 72, consequently, flexure hinge 86 does not appreciably add to thethickness of track pad 72. Therefore, this arrangement is feasible foruse in ultra-thin laptop computers. In such ultra-thin laptop computerapplications, vertical space is extremely limited. In the past, the sizeof electrical components was often the limiting feature as to how smallelectrical devices could be made. Today, electrical components areincreasingly miniaturized, meaning that mechanical components (e.g.,movable track pads) may now be the critical size-limiting components.With this understanding, it is easy to appreciate why linear-actuation(e.g., supporting a movable track pad by coil springs or the like) isnot ideal in some applications. Furthermore, using springs may addunnecessary complexity (increased part count, higher cost, higherfailure rates, etc. . . . ) to the manufacturing process. Anotherdisadvantage of springs is that in some embodiments springs may mask orcompromise the tactile switch force profile. In contrast, flexure 86 candeliver a substantially consistent feel across the track surface 74, andgive the user a more faithful representation of the tactile switch forceprofile.

Referring now to FIG. 13, according to one embodiment of the presentinvention, when a user presses on track surface 74 of track pad 72,track pad 72 pivots downwardly activates switch 78 disposed underneath.When activated, switch 78 generates button signals that may be used byan electronic device connected to input device 70. Flexure 86 canconstrain track pad 72 to move substantially about only one axis. Thiscan be accomplished by, for example, using multiple flexures arrangedalong an axis on one side of track pad 72, such as the rear side.Furthermore, if track pad 72 is made stiff (for example, by inclusion ofstiffener 84 if necessary), a leveling architecture is achieved. Inother words, flexure hinge 86 urges track pad 72 towards its neutralposition and also permits movement about substantially only one axis,i.e., the axis along which flexure hinge 86 is connected to frame 76.

Although embodiments of this invention have been fully described withreference to the accompanying drawings, it is to be noted that variouschanges and modifications will become apparent to those skilled in theart. Such changes and modifications are to be understood as beingincluded within the scope of embodiments of this invention as defined bythe appended claims.

What is claimed is:
 1. An electronic device comprising: an input deviceincluding one or more first sensors and one or more second sensors, theinput device configured to sense at least one touch input from the oneor more first sensors and one pick input from the one or more secondsensors, wherein the at least one touch input has an initial sensedvelocity; and a processor communicatively coupled to the one or morefirst sensors and the one or more second sensors, and capable ofdetermining a revised sensed velocity of the at least one touch inputfor subsequent use by the electronic device, wherein determining therevised sensed velocity comprises modifying the initial sensed velocitybased on a variable that changes over time after a pick input isdetected.
 2. The electronic device of claim 1, the processor furthercapable of resetting the variable when the pick input changes.
 3. Theelectronic device of claim 2, the processor further capable of decayingthe variable after the reset.
 4. The electronic device of claim 1, theprocessor further capable of determining the revised sensed velocityonly when the variable is nonzero.
 5. The electronic device of claim 1,wherein the revised sensed velocity is proportional to the initialsensed velocity except for a dead-zone range of the initial sensedvelocity.
 6. The electronic device of claim 1, the processor furthercapable of setting the revised sense velocity to zero when the initialsensed velocity is below or equal to a threshold, and setting therevised sensed velocity to a value lower than the initial sensedvelocity when the initial sensed velocity is above the threshold.
 7. Theelectronic device of claim 6, wherein after a predetermined time fromthe sensed pick input, the revised sensed velocity equals the initialsensed velocity.
 8. The electronic device of claim 1, the processorfurther capable of determining x and y components of the initial sensedvelocity and the revised sensed velocity of the at least one touchinput.
 9. The electronic device of claim 1, wherein the electronicdevice is incorporated into a portable computing device.
 10. A methodfor modifying input to an electronic device comprising: sensing at leastone touch input and one pick input, wherein the at least one touch inputhas an initial sensed velocity; determining a revised sensed velocity ofthe at least one touch input for subsequent use by the electronicdevice, wherein determining the revised sensed velocity comprisesmodifying the initial sensed velocity based on a variable that changesover time after a pick input is detected.
 11. The method of claim 10,further comprising resetting the variable when the pick input changes.12. The method of claim 11, further comprising decaying the variableafter the reset.
 13. The method of claim 10, further comprisingdetermining the revised sensed velocity only when the variable isnonzero.
 14. The method of claim 10, wherein the revised sensed velocityis proportional to the initial sensed velocity except for a dead-zonerange of the initial sensed velocity.
 15. The method of claim 10,further comprising setting the revised sense velocity to zero when theinitial sensed velocity is below or equal to a threshold, and settingthe revised sensed velocity to a value lower than the initial sensedvelocity when the initial sensed velocity is above the threshold. 16.The method of claim 15, wherein after a predetermined time from thesensed pick input, the revised sensed velocity equals the initial sensedvelocity.
 17. The method of claim 10, further comprising determining xand y components of the initial sensed velocity and the revised sensedvelocity of the at least one touch input.
 18. A non-transitory computerreadable storage medium storing program code for modifying input to anelectronic device, the program code for causing performance of a methodcomprising: sensing at least one touch input and one pick input, whereinthe at least one touch input has an initial sensed velocity; determininga revised sensed velocity of the at least one touch input for subsequentuse by the electronic device, wherein determining the revised sensedvelocity comprises modifying the initial sensed velocity based on avariable that changes over time after a pick input is detected.
 19. Thenon-transitory computer readable storage medium of claim 18, the programcode further for causing performance of the method comprising resettingthe variable when the pick input changes.
 20. The non-transitorycomputer readable storage medium of claim 19, the program code furtherfor causing performance of the method comprising decaying the variableafter the reset.